<?php

class Application_Model_DbTable_TipoPago extends Zend_Db_Table_Abstract
{

    protected $_name = 'tipopago';


    public function get($id)
    {
        $id = (int) $id;
        //$this->fetchRow devuelve fila donde id = $id
        $row = $this->fetchRow('id = ' . $id);
        if (!$row)
        {
            throw new Exception("Could not find row $id");
        }
        //formateo fecha a dia-mes-año para que se vea mejor
        //$fecha = $row->fecha;
        //$fecha = date("d-m-Y", strtotime($fecha));
//        die($fecha);
        //$row->fecha = $fecha;
        return $row->toArray();
    }

    /**
     *  agrega un nuevo album a la base de datos
     * @param  $id
     * @param  $descripcion
     * @param  $fecha fehca de registro de este album en la base de datos
     */
    
    public function agregar($descripcion, $esBancario)
    {
        $data = array('descripcion' => $descripcion, 'bancario'=>$esBancario);
        //$this->insert inserta nuevo album
        $this->insert($data);
    }

    /**
     * modifica los datos del album id= $id
     * @param  $id
     * @param  $nick
     * @param  $pass
     * @param  $idtipousuario
     */
    public function cambiar($id, $descripcion)
    {
        $data = array('descripcion' => $descripcion);
        //$this->update cambia datos de album con id= $id
        $this->update($data, 'id = ' . (int) $id);
    }

    /**
     * borra el album con id= $id
     * @param  $id
     */
    public function borrar($id)
    {
        //$this->delete borrar album donde id=$id
        $this->delete('id =' . (int) $id);
    }

    public function listar()
    {
//        (CASE WHEN column <> 0 THEN 'yes' ELSE 'no' END)
        //devuelve todos los registros de la tabla
//         $select = $this->select()->setIntegrityCheck(false)
//             ->from(array('p' => 'cliente'),
//                    array('nombre', 'apellido'))
//             ->join(array('l' => 'deudas'),
//                    'p.id = l.idCliente',
//                    array('id', 'fechaInicio', 'numDocumento', 'fechaLimite', 'valorDeuda', 'pendiente', 'descripcion') ); // empty list of columns
//        
         $select = $this->select()->setIntegrityCheck(false)
             ->from(array('a' => 'tipopago'), 
                array( 'a.id', 'a.descripcion',  
                        'bancario' => new Zend_Db_Expr("CASE a.bancario WHEN '1' THEN 'Si' ELSE 'No' END")
                ) ) ;  
         
        return $this->fetchAll($select);
    }

}

